package CoreNRMProfile;


/**
 * Generated from IDL interface "GgsnApn".
 *
 * @author JacORB IDL compiler V 2.3.0, 17-Feb-2007
 * @version generated at 2013-5-20 22:07:19
 */

public abstract class GgsnApnPOA
	extends org.omg.PortableServer.Servant
	implements org.omg.CORBA.portable.InvokeHandler, CoreNRMProfile.GgsnApnOperations
{
	static private final java.util.Hashtable m_opsHash = new java.util.Hashtable();
	static
	{
		m_opsHash.put ( "_get_ApnId", new java.lang.Integer(0));
		m_opsHash.put ( "_set_MaxBitRate", new java.lang.Integer(1));
		m_opsHash.put ( "_get_DnsMode", new java.lang.Integer(2));
		m_opsHash.put ( "_get_AccessPointName", new java.lang.Integer(3));
		m_opsHash.put ( "_get_PushSwitch", new java.lang.Integer(4));
		m_opsHash.put ( "_get_ObjectInstance", new java.lang.Integer(5));
		m_opsHash.put ( "_get_MaxBitRate", new java.lang.Integer(6));
		m_opsHash.put ( "_set_PushSwitch", new java.lang.Integer(7));
		m_opsHash.put ( "_get_TransAccess", new java.lang.Integer(8));
		m_opsHash.put ( "_get_MaxPdpContextNum", new java.lang.Integer(9));
		m_opsHash.put ( "_set_TransAccess", new java.lang.Integer(10));
		m_opsHash.put ( "_get_PushGreSwitch", new java.lang.Integer(11));
		m_opsHash.put ( "_set_MaxPdpContextNum", new java.lang.Integer(12));
		m_opsHash.put ( "_set_PushGreSwitch", new java.lang.Integer(13));
		m_opsHash.put ( "_get_ObjectClass", new java.lang.Integer(14));
		m_opsHash.put ( "_set_DnsMode", new java.lang.Integer(15));
	}
	private String[] ids = {"IDL:CoreNRMProfile/GgsnApn:1.0","IDL:GenericNRMProfile/Top:1.0"};
	public CoreNRMProfile.GgsnApn _this()
	{
		return CoreNRMProfile.GgsnApnHelper.narrow(_this_object());
	}
	public CoreNRMProfile.GgsnApn _this(org.omg.CORBA.ORB orb)
	{
		return CoreNRMProfile.GgsnApnHelper.narrow(_this_object(orb));
	}
	public org.omg.CORBA.portable.OutputStream _invoke(String method, org.omg.CORBA.portable.InputStream _input, org.omg.CORBA.portable.ResponseHandler handler)
		throws org.omg.CORBA.SystemException
	{
		org.omg.CORBA.portable.OutputStream _out = null;
		// do something
		// quick lookup of operation
		java.lang.Integer opsIndex = (java.lang.Integer)m_opsHash.get ( method );
		if ( null == opsIndex )
			throw new org.omg.CORBA.BAD_OPERATION(method + " not found");
		switch ( opsIndex.intValue() )
		{
			case 0: // _get_ApnId
			{
			_out = handler.createReply();
			_out.write_string(ApnId());
				break;
			}
			case 1: // _set_MaxBitRate
			{
			_out = handler.createReply();
			MaxBitRate(_input.read_ulong());
				break;
			}
			case 2: // _get_DnsMode
			{
			_out = handler.createReply();
			CoreNRMSystem.DnsModeTypeHelper.write(_out,DnsMode());
				break;
			}
			case 3: // _get_AccessPointName
			{
			_out = handler.createReply();
			_out.write_string(AccessPointName());
				break;
			}
			case 4: // _get_PushSwitch
			{
			_out = handler.createReply();
			CoreNRMSystem.PushSwitchTypeHelper.write(_out,PushSwitch());
				break;
			}
			case 5: // _get_ObjectInstance
			{
			_out = handler.createReply();
			_out.write_string(ObjectInstance());
				break;
			}
			case 6: // _get_MaxBitRate
			{
			_out = handler.createReply();
			_out.write_ulong(MaxBitRate());
				break;
			}
			case 7: // _set_PushSwitch
			{
			_out = handler.createReply();
			PushSwitch(CoreNRMSystem.PushSwitchTypeHelper.read(_input));
				break;
			}
			case 8: // _get_TransAccess
			{
			_out = handler.createReply();
			CoreNRMSystem.TransAccessTypeHelper.write(_out,TransAccess());
				break;
			}
			case 9: // _get_MaxPdpContextNum
			{
			_out = handler.createReply();
			_out.write_ulong(MaxPdpContextNum());
				break;
			}
			case 10: // _set_TransAccess
			{
			_out = handler.createReply();
			TransAccess(CoreNRMSystem.TransAccessTypeHelper.read(_input));
				break;
			}
			case 11: // _get_PushGreSwitch
			{
			_out = handler.createReply();
			CoreNRMSystem.PushGreSwitchTypeHelper.write(_out,PushGreSwitch());
				break;
			}
			case 12: // _set_MaxPdpContextNum
			{
			_out = handler.createReply();
			MaxPdpContextNum(_input.read_ulong());
				break;
			}
			case 13: // _set_PushGreSwitch
			{
			_out = handler.createReply();
			PushGreSwitch(CoreNRMSystem.PushGreSwitchTypeHelper.read(_input));
				break;
			}
			case 14: // _get_ObjectClass
			{
			_out = handler.createReply();
			_out.write_string(ObjectClass());
				break;
			}
			case 15: // _set_DnsMode
			{
			_out = handler.createReply();
			DnsMode(CoreNRMSystem.DnsModeTypeHelper.read(_input));
				break;
			}
		}
		return _out;
	}

	public String[] _all_interfaces(org.omg.PortableServer.POA poa, byte[] obj_id)
	{
		return ids;
	}
}
